package com.tedu.api.thread;

/**
 * 线程常用方法：五
 * yield()    当前线程暂停
 *作用：暂停当前正在执行的线程对象【让当前线程对象让出CPU时间片资源】
 *      执行其他线程，但是yield，CPU时间片有时候会没有效果
 *
 *需求：门 ---恰好容纳一人进去   Door
 * 创建两个线程    student1---如果先进门--假设：”你先来“
 *               student2---如果后进门--根据假设先进门
 */
public class Thread_yield {
    public static void main(String[] args) {
        //创建  门   对象
        Door door=new Door();
        //假设：我说句”你先进“
       String say="你先进";
       //创建两个线程--第一个线程让出时间片
        Thread student1=new Thread(()->{
            System.out.println("第一个人");
            door.enter();  //进教室
            if (say.equals("你先进")){
                Thread.yield();   //静态方法，方法暂停
            }
        });

        Thread student2=new Thread(()->{
            System.out.println("第二个人");
            door.enter(); //进教室
        });
        student1.start();
        student2.start();
    }
}
class Door{
    public void enter(){
        System.out.println("进屋上课~~");
    }
}